<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue-组件中的data为什么是函数</title>
</head>
<body>
    <!-- 功能要求：做一个购物车商品数量增加减少的组件 -->
    <div id="app">
        <!-- 多个组件实例 -->
        <!-- 若data不是函数，点击任意一个+  或者 — ，其他组件的数量都会变化，有连锁反应 -->
        <!-- 如果data不是函数，组件之间可能会互相影响 -->
        <cpn></cpn>
        <cpn></cpn>
        <cpn></cpn>
        <cpn></cpn>
        <cpn></cpn>
    </div>
    <template id="cpn">
        <div>
            <h2>当前计数：{{num}}</h2>
            <button @click="decrement()">-</button>
            <button @click="increment()">+</button>
        </div>
    </template>
    <script src="./js/vue.min.js"></script>
    <script>
        // 1.注册组件
        Vue.component('cpn',{
            template:"#cpn",
            data :function(){
                return{
                    num:0
                }
            },
            methods:{
                increment(){
                    this.num++;
                },
                decrement(){
                    this.num--;
                }

            }
        })
        const app = new Vue({
            el:'#app',
            data:{
                message:'hello'
            }
        })
    </script>
</body>
</html>